/**
 * Created by yangjiao on 2017/6/6.
 */
import send from '../http'

export default {
  /**
   * 客户模块查询
   * @param {Object} data
   * @param {Number} [data.limit] 分页查询limit，默认10
   * @param {Number} [data.page] 分页查询page，默认1
   */
  getCustomerTemplate (data) {
    const req = {
      data,
      action: 'config.customer.getCustomerTemplate'
    }
    return send.fetch(req, 'post')
  },
  /**
   * 添加数据库
   * @param {Object} data
   * @param {Number} [data.limit] 分页查询limit，默认10
   * @param {Number} [data.page] 分页查询page，默认1
   */
  addCustomerTemplate (data) {
    const req = {
      data,
      action: 'config.customer.addCustomerTemplate'
    }
    return send.fetch(req, 'post')
  },
  /**
   * 来电弹屏自动保存客户
   * @param {Object} data
   * @param {Number} [data.limit] 分页查询limit，默认10
   * @param {Number} [data.page] 分页查询page，默认1
   */
  setAutoSave (data) {
    const req = {
      data,
      action: 'config.customer.setAutoSave'
    }
    return send.fetch(req, 'post')
  },
  editDisplayFields (data) {
    const req = {
      data,
      action: 'config.customer.editDisplayFields'
    }
    return send.fetch(req, 'post')
  },

  //离线保存客户
  customerSetAutoSave (data) {
    let req = {
      data: data,
      action: 'config.customer.setAutoSave'
    }
    return send.fetch(req, 'post')
  },
  /**
   * 客户名称,号码去重
   * @param {Object} data
   * @param {Number} [data.limit] 分页查询limit，默认10
   * @param {Number} [data.page] 分页查询page，默认1
   */
  uniqueField (data) {
    const req = {
      data,
      action: 'config.customer.uniqueField'
    }
    return send.fetch(req, 'post')
  },
  /**
   * 修改数据来源
   * @param {Object} data
   * @param {Number} [data.limit] 分页查询limit，默认10
   * @param {Number} [data.page] 分页查询page，默认1
   */
  editSource (data) {
    const req = {
      data,
      action: 'config.customer.editSource'
    }
    return send.fetch(req, 'post')
  },
  /**
   * 修改客户字段
   * @param {Object} data
   * @param {Number} [data.limit] 分页查询limit，默认10
   * @param {Number} [data.page] 分页查询page，默认1
   */
  editFields (data) {
    const req = {
      data,
      action: 'config.customer.editFields'
    }
    return send.fetch(req, 'post')
  },
  /**
   * 修改客户字段
   * @param {Object} data
   * @param {Number} [data.limit] 分页查询limit，默认10
   * @param {Number} [data.page] 分页查询page，默认1
   */
  editStatus (data) {
    const req = {
      data,
      action: 'config.customer.editStatus'
    }
    return send.fetch(req, 'post')
  },
  /**
   * 修改自定义字段
   * @param {Object} data
   * @param {Number} [data.limit] 分页查询limit，默认10
   * @param {Number} [data.page] 分页查询page，默认1
   */
  editCustomField (data) {
    const req = {
      data,
      action: 'config.customer.editCustomField'
    }
    return send.fetch(req, 'post')
  },
  /**
   * 添加自定义字段
   * @param {Object} data
   * @param {Number} [data.limit] 分页查询limit，默认10
   * @param {Number} [data.page] 分页查询page，默认1
   */
  addCustomerField (data) {
    const req = {
      data,
      action: 'config.customer.addCustomerField'
    }
    return send.fetch(req, 'post')
  },
  /**
   * 删除自定义字段
   * @param {Object} data
   * @param {Number} [data.limit] 分页查询limit，默认10
   * @param {Number} [data.page] 分页查询page，默认1
   */
  deleteCustomField (data) {
    const req = {
      data,
      action: 'config.customer.deleteCustomField'
    }
    return send.fetch(req, 'post')
  },
  changeCustomerFieldStatus (data) {
    const req = {
      data,
      action: 'config.customer.changeCustomerFieldStatus'
    }
    return send.fetch(req, 'post')
  },
  /**
   * 自定义字段拖动
   * @param {Object} data
   * @param {String} data.template_id 客户模板id
   * @param {String} data._id 当前拖动的自定义字段id
   * @param {Number} data.oldIndex 当前索引
   * @param {Number} data.newIndex 拖动后的索引
   */
  moveCustomFieldByIndex (data) {
    const req = {
      data,
      action: 'config.customer.moveCustomFieldByIndex'
    }
    return send.fetch(req, 'post')
  },
  /**
   * 批次号查询
   * @param {Object} data
   * @param {Number} [data.limit] 分页查询limit，默认10
   * @param {Number} [data.page] 分页查询page，默认1
   */
  queryMyTask (data) {
    const req = {
      data,
      action: 'app.customer.queryMyTask'
    }
    return send.fetch(req, 'post')
  },
  /**
   * 导入数据查询
   * @param {Object} data
   * @param {Number} [data.limit] 分页查询limit，默认10
   * @param {Number} [data.page] 分页查询page，默认1
   */
  queryTaskImport1 (data) {
    const req = {
      data,
      action: 'app.customer.queryTaskImport'
    }
    return send.fetch(req, 'post')
  },
  /**
   * 删除数据查询
   * @param {Object} data
   */
  delImpTask (data) {
    const req = {
      data,
      action: 'app.customer.delImpTask'
    }
    return send.fetch(req, 'post')
  },
  /**
   * 重复数据查询
   * @param {Object} data
   * @param {Number} [data.limit] 分页查询limit，默认10
   * @param {Number} [data.page] 分页查询page，默认1
   */
  queryTaskRepeat (data) {
    const req = {
      data,
      action: 'app.customer.queryTaskRepeat'
    }
    return send.fetch(req, 'post')
  },
  /**
   * 导入客户模版
   * @param {Object} data
   * @param {Number} [data.trueName] 文件名称
   * @param {Number} [data.fileName] 文件路径
   */
  getXlsHeads (data) {
    const req = {
      data,
      action: 'app.customer.getXlsHeads'
    }
    return send.fetch(req, 'post')
  },
  /**
   * 提交导入客户模版
   * @param {Object} data
   * @param {Number} [data.trueName] 文件名称
   * @param {Number} [data.fileName] 文件路径
   */
  submitImport (data) {
    const req = {
      data,
      action: 'app.customer.import'
    }
    return send.fetch(req, 'post')
  },
  /**
   * 提交导入客户模版列表展示
   * @param {Object} data
   * @param {Number} [data._id]
   */
  getImpTask (data) {
    const req = {
      data,
      action: 'app.customer.getImpTask'
    }
    return send.fetch(req, 'post')
  },
  // 客户推送 接口列表
  queryCompany (data) {
    const req = {
      data,
      action: 'config.company.queryCompany'
    }
    return send.fetch(req, 'post')
  },
  addCompany (data) {
    const req = {
      data,
      action: 'config.company.addCompany'
    }
    return send.fetch(req, 'post')
  },
  removeCompany (data) {
    const req = {
      data,
      action: 'config.company.removeCompany'
    }
    return send.fetch(req, 'post')
  },
  updateCompany (data) {
    const req = {
      data,
      action: 'config.company.updateCompany'
    }
    return send.fetch(req, 'post')
  }
}
